A universal remote control device transmits operational signals to control one or more electronic consumer devices such as TVs, VCRs, cable set-top boxes, and CD/DVD players. Each operational signal communicates a keycode associated with a selected electronic consumer device. Each keycode corresponds to a function of the selected electronic consumer device, such as power on, power off, volume up, volume down, play, stop, select, channel up, channel down, etc. A particular brand and make of electronic consumer device responds to operational signals containing a particular set of keycodes and performs the corresponding functions.
In order to provide the functionality of a universal remote control device, various types of keycodes are stored in codesets as a codeset database format. Each codeset is identified by a three digit device code associated with a particular brand and make of an electronic consumer device. There are more than ten thousand codesets used in the market. Because of the large number of different electronic consumer devices, the amount of memory space required to store the entire codeset database is large. Various compression schemes are used to store the codeset database with reduced memory. Typically, a universal remote control device stores less than one thousand codesets due to limited memory space.
After a universal remote control device has been manufactured, it is likely that the remote control does not have a particular codeset that contains all the keycodes corresponding to all functions of a particular brand and make of a consumer electronic device. For instance, the remote control device is able to control the power, volume, and channel of a television when it is programmed to use codeset#1. However, the remote control device cannot control the picture-in-picture function of the TV when it is programmed to use codeset#1. On the other hand, the remote control device is able to control the picture-in-picture function of the TV when it is programmed to use codeset#2. However, when the remote control device is programmed to use codeset#2, it cannot control the power, volume, and channel of the TV.
Some remote control devices provide additional programmable keys on the remote control device to allow the user to define his/her own desired keycodes. However, the number of programmable keys available on a remote control device is limited. The programmable keys are therefore usually used for advanced functions. Some other remote control devices provide a “key mover” feature which allows a user to reassign a function associated with one key to another key. The “key mover” feature increases flexibility, but it does not solve the problem that a particular codeset does not contain all keycodes corresponding to all functions of a selected electronic consumer device.
Sometimes it is also desirable for a user to be able to control multiple electronic consumer devices without having to reprogram the universal remote control device. For instance, a user may want to be able to control the power of multiple devices types. The “punch through” feature works for a predefined set of keys, typically, the TV channel and volume up/down keys. Another feature known as “double-press” is available on some remote control devices. The “double-press” feature of the power key is, however, hard to use and inflexible, because the user either has to turn on the power of all the devices or has to turn off the power of all the devices by double-pressing the power key quickly.
A solution is desired.